<!DOCTYPE html>
<html lang="zh-CN">
    <head>
        <meta charset="UTF-8" />
        <title>05_面向对象-原型继承-方法继承</title>
    </head>
    <body>
        <script>
            // 跑的这个方法  无论是柯基还是泰迪都有吧 这样的话比较浪费内存 
            // 所以我们需要优化
            // 那么我们就考虑到放到原型上 那么放到哪个原型上呢  如果放到了
            // 柯基上 那么泰迪不能使用 放在泰迪上  柯基不能使用  
            // 我们就想到 放到Object的原型对象上 但是我们一思考  不可以 
            // 因为其他的函数对象的对象 也可以使用run 了
            // function Koki(){
                // this.run = function(){
                //     console.log('跑的很六');
                // }
            // }

            // function Teddy(){
                // this.run = function(){
                //     console.log('跑的很六');
                // }
            // }

            // Object.prototype.run = function(){
            //     console.log('跑的很六');
            // }

            // var kk = new Koki();
            // kk.run();

            // var tt = new Teddy();
            // tt.run();

            // function Apple(){

            // }

            // var aa = new Apple();
            // aa.run();

            // ---------------------------------
            function Koki(){
            }
            function Dog(){
            }
            Dog.prototype.run = function(){
                console.log('跑的很六');
            }
            // 修改Koki和Teddy的原型对象
            Koki.prototype = new Dog();
            // 给原型对象添加constructor属性
            Koki.prototype.constructor = Koki;

            var kk = new Koki();
            kk.run();
            console.log(Koki.prototype);


            function Apple(){

            }

            var aa = new Apple();
            aa.run();


            


        </script>
    </body>
</html>